package com.zj.utils.utils;

import android.content.Context;
import android.content.Intent;
import android.net.Uri;
import android.os.Build;

import androidx.core.content.FileProvider;

import java.io.File;

/**
 * 分享到第三方软件
 *
 * @author jiang zhu on 2019/8/12
 */
public class ShareUtils {

    private static final String COM_ZJ_OSM_FILEPROVIDER = "com.zj.osm.fileprovider";
    private static final String TEXT_PLAIN = "text/plain";

    /**
     * 分享文件到第三方软件
     *
     * @param file 文件
     */
    public static void shareFile(Context context, File file) {
        if (context == null) {
            throw new NullPointerException("上下文不能为空");
        }
        if (file == null) {
            throw new NullPointerException("分享文件不能为空");
        }
        Intent shareIntent = new Intent();
        shareIntent.setAction(Intent.ACTION_SEND);
        if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
            //做一些处理
            shareIntent.putExtra(Intent.EXTRA_STREAM, FileProvider.getUriForFile(context, COM_ZJ_OSM_FILEPROVIDER, file));
        } else {
            //在版本低于此的时候，做一些处理
            shareIntent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file));
        }
        shareIntent.setType(TEXT_PLAIN);
        //设置分享列表的标题，并且每次都显示分享列表
        context.startActivity(Intent.createChooser(shareIntent, "分享勘测文件到"));
    }

}
